-- @owner:魏亚军
-- @date:2023-12-18
<<<<<<< HEAD
-- @testpoint:10.测试修改字段最小值，在事务中修改，部分测试点合理报错
=======
-- @testpoint:10.测试修改字段最小值，在事务中修改
>>>>>>> fd9ee7289 (修改用例符合门禁)

--step1:创建普通序列，最小值为-1,起始值为3，步长为-2，最大值为3，其他属性默认;expect:成功
drop large sequence if exists seqopengauss_alter_sequence_minvalue_case0010_1;
create large sequence seqopengauss_alter_sequence_minvalue_case0010_1 minvalue 1 increment -2 start 3 maxvalue 3;

--step2:查看序列当前最小值;expect:成功(1 row)
select min_value from seqopengauss_alter_sequence_minvalue_case0010_1;

--step3:激活当前序列;expect:成功(1 row)
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step4:查看设置是否生效;expect:成功(1 row)
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step5:查看设置是否生效;expect:报错：ERROR：reached minimum
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step6:在事务中修改序列最小值为-1;expect:成功
begin 
alter large sequence seqopengauss_alter_sequence_minvalue_case0010_1 minvalue -1;
end;
/

--step7:查看序列当前最小值;expect:成功(1 row)
select min_value from seqopengauss_alter_sequence_minvalue_case0010_1;

--step8:验证修改是否生效;expect:成功(1 row)
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step9:验证修改是否生效;expect:报错：ERROR：reached minimum
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step10:修改序列当前值为3;expect:成功(1 row)
select setval('seqopengauss_alter_sequence_minvalue_case0010_1',3);

--step11:在事务中修改序列最小值为1;expect:成功(1 row)
begin;
alter large sequence seqopengauss_alter_sequence_minvalue_case0010_1 minvalue 1;
--step12:提交事务;expect:成功
end;
/

--step13:查看序列当前最小值;expect:成功(1 row)
select min_value from seqopengauss_alter_sequence_minvalue_case0010_1;

--step14:验证修改是否生效;expect:成功(1 row)
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step15:验证修改是否生效;expect:报错：ERROR：reached minimum
select nextval('seqopengauss_alter_sequence_minvalue_case0010_1');

--step16:清理环境;expect:成功
drop large sequence seqopengauss_alter_sequence_minvalue_case0010_1;